Hybrid automatic repeat requests coding in MIMO networks

ABSTRACT

A method transmits a block of symbols in a multiple-input multiple-output (MIMO) network including a transmitter having a set of transmit antennas and a receiver having a set of receive antennas. A block of symbols is coded with a first code to generate a first block, which is transmitted and received. If a decoding of the first block is incorrect, then block of symbols is coded with the first code and then a second code different than the first code to generate a second block. The second block is transmitted, received and combined with the first block to recover the block of symbols.

RELATED APPLICATION

This Application claims priority to U.S. Provisional Patent Application61/021,359, “Space time block coding for HARQ and MIMO transmissions,”file by Orlik et al. on Jan. 16, 2008, and U.S. Provisional PatentApplication 61/077,905 “Space time block coding for HARQ and MIMOtransmissions,” file by Orlik et al. on Jul. 3, 2008.

FIELD OF THE INVENTION

This invention relates generally to the field of wirelesscommunications, and more particularly to retransmitting data usinghybrid automatic repeat requests (HARQ) in multiple-inputmultiple-output (MIMO) networks.

BACKGROUND OF THE INVENTION MIMO Networks

In mobile cellular communication networks, the use of multiple-inputmultiple-output (MIMO) transmission technology is becoming morewidespread. The Worldwide Interoperability for Microwave Access (WiMAX)forum, as well as the 3rd Generation Partnership Project (3GPP) hasreleased standard specifications that make use of MIMO to improvetransmission capacity and reliability.

MIMO networks increase capacity by transmitting and receiving symbolsusing multiple antennas concurrently with a technique usually termedspatial multiplexing (SM). A MIMO receiver can use advanced signalprocessing and properties of the channel to detect and decode thesymbols. To improve reliability, the MIMO network can transmit copies ofthe symbols from multiple antennas in a technique usually called spacetime coding (STC). The IEEE 802.16 standard “Part 16: Air interface forBroadband Wireless Access Systems,” 802.16, upon which WiMAX is based.WiMAX employs both SM and STC techniques.

In addition to MIMO, the standards specify hybrid automatic repeatrequests (HARQ). As in a conventional automatic repeat request (ARQ), areceiver request a retransmission of a message was decoded incorrectly.However, with HARQ, the original corrupted message is retained andcombined with the retransmission message to improve the probability ofsuccessfully decoding the message and recovering the symbols.

Another problem in MIMO networks is self-interference due totransmitting and receiving with multiple antennas. Self-interferenceincreases as the number of antennas increase. It is also desired toeliminate self interference.

SUMMARY OF THE INVENTION

The embodiments of the invention provides a method for combining hybridautomatic repeat requests (HARQ) with space time coding (STC) in amultiple-input multiple-output (MIMO) network to increase thereliability of spatial multiplexed MIMO transmissions.

In addition, the embodiments of the invention provide space time codesthat can by used with higher order MIMO configurations, e.g., four ormore transmit and receive antennas, and spatial multiplexing (SM)wherein self-interference among data streams is eliminated.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a MIMO transmitter according to embodimentsof the invention;

FIG. 2A is a schematic of a MIMI network according to embodiments of theinvention;

FIG. 2B is a block diagram of two blocks of symbols according toembodiments of the invention;

FIG. 3 is a timing diagram of conventional HARQ operations in a MIMOnetwork;

FIG. 4 is a timing diagram of HARQ with STC in a MIMO network accordingto embodiments of the invention; and

FIG. 5 is a timing diagram of HARQ with SICC in a MIMO network accordingto embodiments of the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT MIMO-OFDM with SpatialMultiplexing

Transmitter

FIG. 1 shows a multiple-input multiple-output (MIMO-OFDM) transmitter310 with two transmit antennas 106. The transmitter includes a source101 for coding modulated data symbols (S₁, S₂) 111 as a first block. Thecoding uses a first code, e.g., a forward error-correcting code (FEC),such as a turbo code, a convolutional code, a low-density parity-check(LDPC) code, and the like. The transmitter also includes a demultiplexer(DeMUX) 102, and two OFDM chains 103. Each OFDM chain includes an OFDMmodulator that performs an inverse Fast Fourier transform (IFFT) 104 onthe respective input symbols S₁ and S₂ and then filters, amplifies andconverts the time domain signal to a passband carrier frequency in theRF block 105.

The transmitter also includes a coder 350. The coder is used during HARQoperations to recode the retransmitted symbols as a second block usingan additional code that was not used to code the symbols for the firsttransmission. That is, the coder 350 is enabled only forretransmissions, and the symbols initially transmitted bypass 351 thecoder 350.

The transmitter 310 uses spatial multiplexing (SM), wherein the sequenceof modulated symbols 111 is transmitted via the two antennas 106. Thatis, for the two symbols S₁ and S₂, only one channel is required becausesymbol S₁ is transmitted by the first antenna, and symbol S₂ istransmitted concurrently by the second antenna to double thetransmission rate. Generally, the transmission is

$S = {\begin{bmatrix}S_{1} \\S_{2}\end{bmatrix}.}$

Receiver

A receiver typically needs to have at least as many antennas as thetransmitter to enable the detecting and decoding of the symbolstransmitted by the two transmit antennas 106 to recover the symbols.Several receiver types are known.

An optimal receiver includes a maximum likelihood detector. Sub-optimalreceivers can use minimum mean square error (MMSE) and zero forcing(ZF). The embodiments of the invention can be used in transmitters andreceivers with a large number of antennas, and where spatialmultiplexing (SM) and hybrid automatic repeat requests (HARQ) are used.

Channel Matrix

FIG. 2A shows a MIMO network with a transmitter 310 and a receiver 320.The transmitters has multiple transmit antennas 201, and the receiverhas multiple receive antennas 202, and a wireless channel 210 betweenthe antennas. We first describe the case where SM is combined with HARQ.We represent the MIMO channel for each of the OFDM subcarriers as amatrix H. The matrix H is

${H = \begin{bmatrix}h_{1,1} & h_{1,2} \\h_{2,1} & h_{2,2}\end{bmatrix}},$

where the elements h_(i,j) are channel coefficients from the j^(th)transmit antenna to the i^(th) receive antenna. The received signal atthe two antennas can be expressed in matrix form as

$\begin{bmatrix}r_{1} \\r_{2}\end{bmatrix} = {{\begin{bmatrix}h_{1,1} & h_{1,2} \\h_{2,1} & h_{2,2}\end{bmatrix}\begin{matrix}S_{1} \\S_{2}\end{matrix}} + {\begin{bmatrix}n_{1} \\n_{2}\end{bmatrix}.}}$

This is equivalent to R=HS+n, where n is an additive white Gaussiannoise vector and S is the vector of transmitted signals.

As shown in FIG. 2B for the purpose HARQ operation, the vector S is avector of symbols rather then individual modulation symbols. The blocksare the modulated wave forms derived from the sequence of input symbols111. Thus, the vector S is a vector of symbols that represents an entireblock (or packet) of modulation symbols that are transmittedconsecutively.

FIG. 2B shows two block 221-222 of fifty symbols. Symbols s₁ and s₅₀ aretransmitted first, than symbols s₂, and so forth. Then, the entireblocks are decoded to determine whether or not the blocks need to beretransmitted or not.

The components of block

${S = \begin{bmatrix}{S_{1}(k)} \\{S_{2}(k)}\end{bmatrix}},$depend on a time index k. However, we omit the time index notation tosimplify this description. The subscript indicates which antenna is usedin the transmission.

The received signals at each receiver antenna can be represented byexpanding the matrix equation tor ₁ =h _(1,1) s ₁ +h _(1,2) s ₂ +n ₁r ₂ =h _(2,1) s ₁ +h _(2,2) s ₂ +n ₂.

HARQ

FIG. 3 shows the operation of the conventional HARQ. The transmitter 310transmits a first block of symbols S⁽¹⁾ 301. The receiver 320 operateson the vector R to detect the received block S⁽¹⁾ 302, which is storedin a memory at the receiver. The receiver also has the channel matrix H,which is used to detect the block S. The receiver can implement decodingschemes, such as MMSE or ZF to reco9ver and estimate of the receivedsignal Ŝ. If the block is decoded correctly and the symbols arerecovered, then no further processing or retransmission is required.

If decoding of the received signal is incorrect, that is, the estimate Ŝis not equal to the vector S, then the HARQ operation starts. Thereceiver stores the first block 302 of the received signal R, andtransmits a retransmission request 303.

In response to the retransmission request 303, the transmitter transmitsan exact duplicate of the first block as a second block S⁽²⁾ 304, wherethe superscript indicates the second transmission attempt. That is, inthe conventional HARQ, there is no coder 350, and any retransmissionsare identical to the initial transmission.

Thus, the two successive transmissions are S⁽¹⁾ and S⁽²⁾, whereS^((1)≡)S⁽²⁾. After reception of the retransmitted signal, the receiverhas the two copies of the received signals R⁽¹⁾ and R⁽²⁾. These can beexpressed as

$\begin{bmatrix}r_{1}^{(1)} & r_{1}^{(2)} \\r_{2}^{(1)} & r_{2}^{(2)}\end{bmatrix} = {\begin{bmatrix}{{h_{1,1}s_{1}} + {h_{1,2}s_{2}} + n_{1}^{(1)}} & {{h_{1,1}s_{1}} + {h_{1,2}s_{2}} + n_{1}^{(2)}} \\{{h_{2,1}s_{1}} + {h_{2,2}s_{2}} + n_{2}^{(1)}} & {{h_{2,1}s_{1}} + {h_{2,2}s_{2}} + n_{2}^{(2)}}\end{bmatrix}.}$

The terms r_(j) ^((i)), represent the signal at the j^(th) antenna dueto the i^(th) transmission, and n_(j) ^((i)), is the noise at the j^(th)antenna associated with the i^(th) transmission. It should be noted thatn_(j) ^((i)), {j=1, 2, i=1, 2} are all independent identically (i.i.d.)distributed Gaussian with a variance σ².

The copies of the received signals are combined to improve theprobability of success for the decoding 306 to recover the symbols. Onecommon way to combine 305 the received signals R⁽¹⁾ and R⁽²⁾ is toaverage the two vectors to obtain

$R^{\prime} = {\frac{R^{(1)} + R^{(2)}}{2}.}$

It should be noted that the HARQ can be repeated multiple times, and theaveraging includes multiple retransmission blocks.

The combining operation 305 reduces the noise variance and power by afactor of two, and improves the decoding 306 to correctly recover thesymbols. However, there still remains an interference term for thereceived signal at each antenna, which can be seen by expressing R′ as

$\begin{bmatrix}r_{1}^{\prime} \\r_{2}^{\prime}\end{bmatrix} = {\begin{bmatrix}{\left( {{h_{1,1}s_{1}} + {h_{1,2}s_{2}}} \right) + n_{1}^{\prime}} \\{\left( {{h_{2,1}s_{1}} + {h_{2,2}s_{2}}} \right) + n_{2}^{\prime}}\end{bmatrix}.}$

Self Interference

The terms h_(1,2)s₂ and h_(2,1)s₁ are the interference terms at receiveantenna 1 from transmit antenna 2, and receive antenna 2 from transmitantenna 1, respectively.

This type of interference is typically called self interference, becauseit is due to the transmission of multiple streams from multipleantennas. Thus, the two transmissions reduce the noise power but do noteliminate the self interference. It should be noted that selfinterference increases as the number of antennas increase. Therefore,the embodiments of the invention, which eliminate self-interference, isimportant in MIMO transceivers with a larger number of antennas, e.g.,four or more.

HARQ with STC

To eliminate self interference, we perform additional coding 350 with asecond code that is different than the first code during theretransmission using a second code, different than the first code.

As shown in FIG. 4 for one embodiment, the second code is a space-timecode (STC). One STC is the well know Alamouti code, which has thegeneral form

$S = {\begin{bmatrix}S_{1} & {- S_{2}^{*}} \\S_{2} & S_{1}^{*}\end{bmatrix}.}$

The symbols in the first column are transmitted first by the antennasindicated by the subscripts, followed by the complex conjugate (*) ofthe symbols and a reversal of the antennas in the next time interval. Inthis case, the retransmission is encoded in a way that enables thereceiver to eliminate the self interference.

The first transmission of the first block 401 is conventional

$S^{(1)} = {\begin{bmatrix}S_{1} \\S_{2}\end{bmatrix}.}$

If decoding fails, then the receiver stores the received signal R⁽¹⁾402, and a retransmission 403 is requested. The transmitter 310transmits the following coded set of signals 404 as the second block

${S^{(2)} = \begin{bmatrix}{- \left( S_{2} \right)^{*}} \\\left( S_{1} \right)^{*}\end{bmatrix}},$which is the result of space-time coding by the coder 350. Thus, thecoding that is used for the retransmission is different than the codingthat is used for the initial transmission.

At the receiver 320, the matrix R^((1,2)) represents the receivedsignals at both antennas were the first column is due to thetransmission of the first block S⁽¹⁾, and the second column in due tothe retransmission of the block S⁽²⁾, that is

$R^{({1,2})} = {{{H\left\lbrack {S^{(1)}\mspace{31mu} S^{(2)}} \right\rbrack} + n^{({1,2})}} = {{\begin{bmatrix}h_{1,1} & h_{1,2} \\h_{2,1} & h_{2,2}\end{bmatrix}\begin{bmatrix}S_{1} & {- \left( S_{2} \right)^{*}} \\S_{2} & \left( S_{1} \right)^{*}\end{bmatrix}} + {\quad{n^{({1,2})} = {\begin{bmatrix}{{h_{1,1}S_{1}} + {h_{1,2}S_{2}}} & {{- {h_{1,1}\left( S_{2} \right)}^{*}} + {h_{1,2}\left( S_{1} \right)}^{*}} \\{{h_{2,1}S_{1}} + {h_{2,2}S_{2}}} & {{- {h_{2,1}\left( S_{2} \right)}^{*}} + {h_{2,2}\left( S_{1} \right)}^{*}}\end{bmatrix} + {\begin{bmatrix}n_{1}^{(1)} & n_{1}^{(2)} \\n_{2}^{(1)} & n_{2}^{(2)}\end{bmatrix}.}}}}}}$

The signals at the receiver can be combined 405 and decoded 406according to the following equations to obtain

For S₁h _(1,1)*(h _(1,1) S ₁ +h _(1,2) S ₂ +n ₁ ⁽¹⁾)+h _(1,2)(−h _(1,1)(S₂)*+h _(1,2)(S ₁)*+n ₁ ⁽²⁾)*h _(2,1)*(h _(2,1) S ₁ +h _(2,2) S ₂ +n ₂ ⁽¹⁾)+h _(2,2)(−h _(2,1)(S₂)*+h _(2,2)(S ₁)*+n ₂ ⁽²⁾)*=(|h _(1,1)|² +|h _(1,2)|² +|h _(2,1)|² +|h_(2,2)|²)·S ₁ +n ₁′

For S₂,h _(1,2)*(h _(1,1) S ₁ +h _(1,2) S ₂ +n ₁ ⁽¹⁾)−h _(1,1)(−h _(1,1)(S₂)*+h _(1,2)(S ₁)*+n ₁ ⁽²⁾)*h _(2,2)*(h _(2,1) S ₁ +h _(2,2) S ₂ +n ₂ ⁽¹⁾)−h _(2,1)(−h _(2,1)(S₂)*+h _(2,2)(S ₁)*+n ₂ ⁽²⁾)*=(|h _(1,1)|² +|h _(1,2)|² +|h _(2,1)|² +|h_(2,2)|²)·S ₂ +n ₂′wheren ₁ ′=h _(1.1) *n ₁ ⁽¹⁾ +h _(1.2)(n ₁ ⁽²⁾)*+h _(2.1) *n ₂ ⁽¹⁾ +h_(2.2)(n ₂ ⁽²⁾)*,n ₂ ′=h _(1.2) *n ₁ ⁽¹⁾ −h _(1.1)(n ₁ ⁽²⁾)*+h _(2.2) *n ₂ ⁽¹⁾ −h_(2.1)(n ₂ ⁽²⁾)*.

With this combining scheme, the self inference between antennas iscompletely eliminated, and the symbols can be recovered. Essentially, ifwe recode the retransmitted signals and use a slightly more complexcombining at the receiver, we eliminate the self interference.

After the combing 405, the receiver attempts to decode 406 thetransmitted block of symbols S. Because the combined signal no longercontains any self interference, the probability of correct decoding 406and recovering the symbols increases.

It should be noted that additional retransmissions are possible, whereineach retransmission is recoded by the coder 350.

HARQ with SICC

Other coding can be used in the coder 350 to eliminate the selfinterference for a HARQ transmission. Another second code is aself-interference cancellation code (SICC) as shown in FIG. 5. This issimilar to the STC coding of the HARQ retransmissions, but is simpler toimplement and is based on Hadamard matrices, a well known generalizedclass of discrete Fourier transform matrices.

We have a 2×2 antenna network, and we denote S=[S₁S₂]^(T) as a vector ofsignals (block of symbols) transmitted 501 from the two transmitantennas. After reception of the signal R=HS+n 502, and a failure in thedecoding, the HARQ process is initiated and a request for aretransmission 503 is sent to the transmitter. The retransmission 504 iscoded 350 according to a second code

${S^{(2)} = \begin{bmatrix}S_{1} \\{- S_{2}}\end{bmatrix}},$wherein the signal transmitted from the second antenna is simplynegated.

At receiver 320, the two received signals areR ^((1,2)) =H[S ⁽¹⁾ S ⁽²⁾ ]+n ^((1,2)).

Expanding R^((1,2)), we obtain

$R^{({1,2})} = {{{H\left\lbrack {S^{(1)}\mspace{31mu} S^{(2)}} \right\rbrack} + n^{({1,2})}} = {{\begin{bmatrix}h_{1,1} & h_{1,2} \\h_{2,1} & h_{2,2}\end{bmatrix}\begin{bmatrix}S_{1} & \left( S_{1} \right) \\S_{2} & \left( {- S_{2}} \right)\end{bmatrix}} + {\quad{n^{({1,2})} = {\begin{bmatrix}{{h_{1,1}S_{1}} + {h_{1,2}S_{2}}} & {{h_{1,1}\left( S_{1} \right)} - {h_{1,2}\left( S_{2} \right)}} \\{{h_{2,1}S_{1}} - {h_{2,2}S_{2}}} & {{h_{2,1}\left( S_{1} \right)} - {h_{2,2}\left( S_{2} \right)}}\end{bmatrix} + {\begin{bmatrix}n_{1}^{(1)} & n_{1}^{(2)} \\n_{2}^{(1)} & n_{2}^{(2)}\end{bmatrix}.}}}}}}$

The combining 505 for SICC begins with the multiplication of thereceived matrix (R^((1,2))) by the 2×2 Hadamard matrix yielding,

$R^{{({1,2})}^{\prime}} = {{R^{({1,2})}\begin{bmatrix}1 & 1 \\1 & {- 1}\end{bmatrix}} = {{2\begin{bmatrix}{h_{11}S_{1}} & {h_{12}S_{2}} \\{h_{21}S_{1}} & {h_{22}S_{2}}\end{bmatrix}} + {\begin{bmatrix}{n_{1}^{(1)} + n_{1}^{(2)}} & {n_{1}^{(1)} - n_{1}^{(2)}} \\{n_{2}^{(1)} + n_{2}^{(2)}} & {n_{2}^{(1)} - n_{2}^{(2)}}\end{bmatrix}.}}}$

Thus, the signal component of the matrix R^((1,2))′ contains twocolumns, were the first column depends only on the signal S₁ and thesecond column depends only on the signal S₂. We can combine the signalsby multiply the first column of the matrix R^((1,2))′ by the vector[h₁₁*h₂₁*]^(T), and the second column of the matrix R^((1,2))′ by thevector [h₁₂*h₂₂*]^(T). These yields2h _(1,1) S ₁ h _(1,1)*+2h _(2,1) S ₁ h _(2,1) *+n ₁′=2(|h _(1,1)|² +|h_(2,1)|²)·S ₁ +n ₁′2h _(1,2) S ₂ h _(1,2)*+2h _(2,2) S ₂ h _(2,2) *+n ₂′=2(|h _(1,2)|² +|h_(2,2)|²)·S ₂ +n ₂′wheren ₁ ′=h _(1,1) *n _(1,1) ′+h _(2,1) *n _(2,1)′,n ₂ ′=h _(1,2) *n _(1,2) ′+h _(2,2) *n _(2,2)′, and

$\left\lbrack {\begin{matrix}n_{1,1}^{\prime} & n_{1,2}^{\prime} \\n_{2,1}^{\prime} & n_{2,2}^{\prime}\end{matrix}\ldots} \right\rbrack = {\begin{bmatrix}{n_{1}^{(1)} + n_{1}^{(2)}} & {n_{1}^{(1)} - n_{1}^{(2)}} \\{n_{2}^{(1)} + n_{2}^{(2)}} & {n_{2}^{(1)} - n_{2}^{(2)}}\end{bmatrix}.}$

Thus, the SICC combining yields signals where the self interference hasbeen eliminated, and thus the probability of correct decoding 506improves over conventional HARQ with SM.

If after the initial HARQ retransmission S⁽²⁾, the receiver stilldetects an error in the decoding on the signals S₁, and S_(2′) then anadditional retransmission can be requested. Denoting S^((j)) as thej^(th) HARQ transmission, at the receiver, we haver ^((1,2, . . . )) =H[S ⁽¹⁾ S ⁽²⁾ S ⁽³⁾ S ⁽⁴⁾ . . . ]+n ^((1,2 . . . )).

By same combining scheme for SICC, we process the signals arriving ateach antenna with a repeated Hadamard matrix

${r^{({1,2,\ldots})}\left\lbrack {\begin{matrix}1 & 1 & 1 & 1 \\1 & {- 1} & 1 & {- 1}\end{matrix}\ldots} \right\rbrack},$where superscripts represent instances of receiving the second block,and2h _(1,1) S ₁ h _(1,1)*+2h _(2,1) S ₁ h _(2,1)*+2h _(1,1) S ₁ h_(1,1)*+2h _(2,1) S ₁ h _(2,1) *+ . . . +n ₁′=2(|h _(1,1)|² +|h _(2,1)|²+|h _(1,1)|² +|h _(2,1)|²+ . . . )·S ₁ +n ₁′2h _(1,2) S ₂ h _(1,2)*+2h _(2,2) S ₂ h _(2,2)*+2h _(1,2) S ₂ h_(1,2)*+2h _(2,2) S ₂ h _(2,2) *+ . . . +n ₂′=2(|h _(1,2)|² +|h _(2,2)|²+|h _(1,2)|² +|h _(2,2)|²+ . . . )·S ₂ +n ₂′where

${n_{1}^{\prime} = {{h_{1.1}^{*}n_{1.1}^{\prime}} + {h_{2.1}^{*}n_{2.1}^{\prime}} + \ldots}}\mspace{14mu},{n_{2}^{\prime} = {{h_{1.2}^{*}n_{1.2}^{\prime}} + {h_{2.2}^{*}n_{2.2}^{\prime}} + {\ldots\mspace{14mu}.}}},{\left\lbrack {\begin{matrix}n_{1,1}^{\prime} & n_{1,2}^{\prime} \\n_{2,1}^{\prime} & n_{2,2}^{\prime}\end{matrix}\ldots} \right\rbrack = {\left\lbrack {\begin{matrix}{n_{1}^{(1)} + n_{1}^{(2)}} & {n_{1}^{(1)} - n_{1}^{(2)}} \\{n_{2}^{(1)} + n_{2}^{(2)}} & {n_{2}^{(1)} - n_{2}^{(2)}}\end{matrix}\ldots} \right\rbrack.}}$

Coding for Large Antenna Configurations in MIMO Networks

By combining the SICC and STC schemes on the initial transmission, wecan achieve new MIMO codes that eliminate self interference fortransceivers with a large number of antennas. In the following, weassume four transmit antennas and four receive antennas. However, itshould be understood that the number of transmit and receive antennascan be smaller or larger by altering the matrices described belowaccordingly.

We process on a per modulated symbol, rather then on the entire signalfor a block of symbols. That is, the transmitted signals S=[S₁ S₂ S₃S₄]^(T) represents a vector of individual symbols, rather then a blockof symbols transmitted by each antenna as described above. The transposeoperator is T. Also, we assume that the receiver has the channel matrixH, e.g., for four transmit antennas, and four receive antennas:

$H = {\begin{bmatrix}h_{1,1} & h_{1,2} & h_{1,3} & h_{1,4} \\h_{2,1} & h_{2,2} & h_{2,3} & h_{2,4} \\h_{3,1} & h_{3,2} & h_{3,3} & h_{4,4} \\h_{4,1} & h_{4,2} & h_{4,3} & h_{3,4}\end{bmatrix} \cdot}$

During the transmission of each symbol, we use the STC coding and theSICC coding to obtains the following matrix:

$S = {\begin{bmatrix}S_{1} & {- S_{2}^{*}} & S_{1} & {- S_{2}^{*}} \\S_{2} & S_{1}^{*} & S_{2} & S_{1}^{*} \\S_{3} & {- S_{4}^{*}} & {- S_{3}} & S_{4}^{*} \\S_{4} & S_{3}^{*} & {- S_{4}} & {- S_{3}^{*}}\end{bmatrix} \cdot}$

Here each column of the matrix S represents the symbols transmitted ateach transmission interval, and the subscripts index the set ofantennas. The structure of the first two columns of the matrix S can beseen to be an “Alamouti type” code on the symbols S₁ and S₂ transmittedby antennas 1 and 2, while a second Alamouti type code on symbols S₃ andS₄ transmitted by antennas 3 and 4. The next two columns repeat theAlamouti code. However, the symbols on antennas 3 and 4 are just negatedas in the SICC code described above.

If the encoding is done on an individual symbol basis, rather then ablock basis as described above, then the transmitter sends the fourcolumns of the matrix, S, in as a stream. That is all four columns aresent sequentially before feedback from the transmitter is expected.Essentially, the matrix S represents a space time code that is usedwithout the HARQ protocol.

Additionally, the receiver waits until all four columns are receivedbefore attempting to detect and decode the vector S=[S₁, S₂, S₃,S₄]^(T),

where T is the transpose operator.

After all four columns of the matrix S have been transmitted, thereceived signal is

${r = {{{HS} + n} = {{\begin{bmatrix}h_{1,1} & h_{1,2} & h_{1,3} & h_{1,4} \\h_{2,1} & h_{2,2} & h_{2,3} & h_{2,4} \\h_{3,1} & h_{3,2} & h_{3,3} & h_{3,4} \\h_{4,1} & h_{4,2} & h_{4,3} & h_{4,4}\end{bmatrix}\begin{bmatrix}S_{1} & {- S_{2}^{*}} & S_{1} & {- S_{2}^{*}} \\S_{2} & S_{1}^{*} & S_{2} & S_{1}^{*} \\S_{3} & {- S_{4}^{*}} & {- S_{3}} & S_{4}^{*} \\S_{4} & S_{3}^{*} & {- S_{4}} & {- S_{3}^{*}}\end{bmatrix}} + n}}},$where noise n is

${n = {{{\begin{bmatrix}n_{1,1} & n_{1,2} & n_{1,3} & n_{1,4} \\n_{2,1} & n_{2,2} & n_{2,3} & n_{2,4} \\n_{3,1} & n_{3,2} & n_{3,3} & n_{3,4} \\n_{4,1} & n_{4,2} & n_{4,3} & n_{4,4}\end{bmatrix} \cdot {If}}\mspace{14mu}{we}\mspace{14mu}{set}{\mspace{11mu}\;}r} = \begin{bmatrix}r_{1,1} & r_{1,2} & r_{1,3} & r_{1,4} \\r_{2,1} & r_{2,2} & r_{2,3} & r_{2,4} \\r_{3,1} & r_{3,2} & r_{3,3} & r_{3,4} \\r_{4,1} & r_{4,2} & r_{4,3} & r_{4,4}\end{bmatrix}}},$then the combining of the symbols from each antenna can be expressed forthe first symbol S₁,

${{\begin{bmatrix}r_{1,1} & r_{1,2}^{*} & r_{1,3} & r_{1,4}^{*}\end{bmatrix}\begin{bmatrix}h_{1,1}^{*} \\h_{1,2} \\h_{1,1}^{*} \\h_{1,2}\end{bmatrix}} + {\begin{bmatrix}r_{2,1} & r_{2,2}^{*} & r_{2,3} & r_{2,4}^{*}\end{bmatrix}\begin{bmatrix}h_{2,1}^{*} \\h_{2,2} \\h_{2,1}^{*} \\h_{2,2}\end{bmatrix}}} = {{2\left( {{h_{1,1}}^{2} + {h_{1,2}}^{2} + {h_{2,1}}^{2} + {h_{2,2}}^{2}} \right)S_{1}} + n_{1}^{\prime}}$for the second symbol S₂,

${{\begin{bmatrix}r_{1,1} & r_{1,2}^{*} & r_{1,3} & r_{1,4}^{*}\end{bmatrix}\begin{bmatrix}h_{1,2}^{*} \\{- h_{1,1}} \\h_{1,2}^{*} \\{- h_{1,1}}\end{bmatrix}} + {\begin{bmatrix}r_{2,1} & r_{2,2}^{*} & r_{2,3} & r_{2,4}^{*}\end{bmatrix}\begin{bmatrix}h_{2,2}^{*} \\{- h_{2,1}} \\h_{2,2}^{*} \\{- h_{2,1}}\end{bmatrix}}} = {{2\left( {{h_{1,1}}^{2} + {{h_{1,2}{^{2} + }h_{2,1}{^{2} + }h_{2,2}}}^{2}} \right)S_{2}} + n_{2}^{\prime}}$for the third symbol S₃,

${{\begin{bmatrix}r_{3,1} & r_{3,2}^{*} & r_{3,3} & r_{3,4}^{*}\end{bmatrix}\begin{bmatrix}h_{3,3}^{*} \\h_{3,4} \\{- h_{3,3}^{*}} \\{- h_{3,4}}\end{bmatrix}} + {\begin{bmatrix}r_{4,1} & r_{4,2}^{*} & r_{4,3} & r_{4,4}^{*}\end{bmatrix}\begin{bmatrix}h_{4,3}^{*} \\h_{4,4} \\{- h_{4,3}^{*}} \\{- h_{4,4}}\end{bmatrix}}} = {{2\left( {{h_{3,3}}^{2} + {h_{3,4}}^{2} + {h_{4,3}}^{2} + {h_{4,4}}^{2}} \right)S_{3}} + n_{3}^{\prime}}$and for the fourth symbol S₄,

${{\begin{bmatrix}r_{3,1} & r_{3,2}^{*} & r_{3,3} & r_{3,4}^{*}\end{bmatrix}\begin{bmatrix}h_{3,4}^{*} \\{- h_{3,3}} \\{- h_{3,4}^{*}} \\h_{3,3}\end{bmatrix}} + {\begin{bmatrix}r_{4,1} & r_{4,2}^{*} & r_{4,3} & r_{4,4}^{*}\end{bmatrix}\begin{bmatrix}h_{4,4}^{*} \\{- h_{4,3}} \\{- h_{4,4}^{*}} \\h_{4,3}\end{bmatrix}}} = {{2\left( {{h_{3,3}}^{2} + {h_{3,4}}^{2} + {h_{4,3}}^{2} + {h_{4,4}}^{2}} \right)S_{4}} + {n_{4}^{\prime}.}}$

The combining yields four symbols that contain no self-interferenceterms, and thus simple detection schemes can be applied to estimate thetransmitted symbols.

For 4×4 STC+SICC, with Hadamard and Alamouti coding,

${H = \begin{bmatrix}h_{1,1} & h_{1,2} & h_{1,3} & h_{1,4} \\h_{2,1} & h_{2,2} & h_{2,3} & h_{2,4} \\h_{3,1} & h_{3,2} & h_{3,3} & h_{3,4} \\h_{4,1} & h_{4,2} & h_{4,3} & h_{4,4}\end{bmatrix}},$

four transmit antennas, and four receive antennas.

For SICC the 2×2 STC 4 grouping case, with a diversity order 4+4+4+4,and a multiplex rate 1,

$S = {\left\lbrack \begin{matrix}S_{1} & {- S_{2}^{*}} & S_{5} & {- S_{6}^{*}} \\S_{2} & S_{1}^{*} & S_{7} & {- S_{8}^{*}} \\S_{3} & {- S_{4}^{*}} & S_{6} & S_{5}^{*} \\S_{4} & S_{3}^{*} & S_{8} & S_{7}^{*}\end{matrix} \middle| \begin{matrix}S_{1} & {- S_{2}^{*}} & S_{5} & {- S_{6}^{*}} \\S_{2} & S_{1}^{*} & {- S_{7}} & S_{8}^{*} \\{- S_{3}} & S_{4}^{*} & S_{6} & S_{5}^{*} \\{- S_{4}} & {- S_{3}^{*}} & {- S_{8}} & {- S_{7}^{*}}\end{matrix} \right\rbrack \cdot}$

At the receiver, the received signal is

${r = {{{HS} + n} = \mspace{31mu}{{\begin{bmatrix}h_{1,1} & h_{1,2} & h_{1,3} & h_{1,4} \\h_{2,1} & h_{2,2} & h_{2,3} & h_{2,4} \\h_{3,1} & h_{3,2} & h_{3,3} & h_{3,4} \\h_{4,1} & h_{4,2} & h_{4,3} & h_{4,4}\end{bmatrix}\left\lbrack \left. \begin{matrix}S_{1} & {- S_{2}^{*}} & S_{5} & {- S_{6}^{*}} \\S_{2} & S_{1}^{*} & S_{7} & {- S_{8}^{*}} \\S_{3} & {- S_{4}^{*}} & S_{6} & S_{5}^{*} \\S_{4} & S_{3}^{*} & S_{8} & S_{7}^{*}\end{matrix} \middle| \begin{matrix}S_{1} & {- S_{2}^{*}} & S_{5} & {- S_{6}^{*}} \\S_{2} & S_{1}^{*} & {- S_{7}} & S_{8}^{*} \\{- S_{3}} & S_{4}^{*} & S_{6} & S_{5}^{*} \\{- S_{4}} & {- S_{3}^{*}} & {- S_{8}} & {- S_{7}^{*}}\end{matrix} \right. \right\rbrack} + n}}},{where}$$n = {\left\lbrack {\begin{matrix}n_{1,1} & n_{1,2} & n_{1,3} & n_{1,4} \\n_{2,1} & n_{2,2} & n_{2,3} & n_{2,4} \\n_{3,1} & n_{3,2} & n_{3,3} & n_{3,4} \\n_{4,1} & n_{4,2} & n_{4,3} & n_{4,4}\end{matrix}\begin{matrix}n_{1,5} & n_{1,6} & n_{1,7} & n_{1,8} \\n_{2,5} & n_{2,6} & n_{2,7} & n_{2,8} \\n_{3,5} & n_{3,6} & n_{3,7} & n_{3,8} \\n_{4,5} & n_{4,6} & n_{4,7} & n_{4,8}\end{matrix}} \right\rbrack \cdot}$

This decodes as

${r = {\left\lbrack {\begin{matrix}r_{1,1} & r_{1,2} & r_{1,3} & r_{1,4} \\r_{2,1} & r_{2,2} & r_{2,3} & r_{2,4} \\r_{3,1} & r_{3,2} & r_{3,3} & r_{3,4} \\r_{4,1} & r_{4,2} & r_{4,3} & r_{4,4}\end{matrix}\begin{matrix}r_{1,5} & r_{1,6} & r_{1,7} & r_{1,8} \\r_{2,5} & r_{2,6} & r_{2,7} & r_{2,8} \\r_{3,5} & r_{3,6} & r_{3,7} & r_{3,8} \\r_{4,5} & r_{4,6} & r_{4,7} & r_{4,8}\end{matrix}} \right\rbrack\mspace{14mu}{for}\mspace{14mu} S_{1}}},{{{\begin{bmatrix}r_{1,1} & r_{1,2}^{*} & r_{1,5} & r_{1,6}^{*}\end{bmatrix}\begin{bmatrix}h_{1,1}^{*} \\h_{1,2} \\h_{1,1}^{*} \\h_{1,2}\end{bmatrix}} + {\begin{bmatrix}r_{2,1} & r_{2,2}^{*} & r_{2,5} & r_{2,6}^{*}\end{bmatrix}\begin{bmatrix}h_{2,1}^{*} \\h_{2,2} \\h_{2,1}^{*} \\h_{2,2}\end{bmatrix}}} = {{2\left( {{h_{1,1}}^{2} + {h_{1,2}}^{2} + {h_{2,1}}^{2} + {h_{2,2}}^{2}} \right)S_{1}} + {n_{1}^{\prime}{for}\mspace{14mu} S_{2}}}},{{{\begin{bmatrix}r_{1,1} & r_{1,2}^{*} & r_{1,5} & r_{1,6}^{*}\end{bmatrix}\begin{bmatrix}h_{1,2}^{*} \\{- h_{1,1}} \\h_{1,2}^{*} \\{- h_{1,1}}\end{bmatrix}} + {\begin{bmatrix}r_{2,1} & r_{2,2}^{*} & r_{2,5} & r_{2,6}^{*}\end{bmatrix}\begin{bmatrix}h_{2,2}^{*} \\{- h_{2,1}} \\h_{2,2}^{*} \\{- h_{2,1}}\end{bmatrix}}} = {{2\left( {{h_{1,1}}^{2} + {h_{1,2}}^{2} + {h_{2,1}}^{2} + {h_{2,2}}^{2}} \right)S_{2}} + {n_{2}^{\prime}{{for}\mspace{14mu} S_{3}}}}},{{{\begin{bmatrix}r_{3,1} & r_{3,2}^{*} & r_{3,5} & r_{3,6}^{*}\end{bmatrix}\begin{bmatrix}h_{3,3}^{*} \\h_{3,4} \\{- h_{3,3}^{*}} \\{- h_{3,4}}\end{bmatrix}} + {\begin{bmatrix}r_{4,1} & r_{4,2}^{*} & r_{4,5} & r_{4,6}^{*}\end{bmatrix}\begin{bmatrix}h_{4,3}^{*} \\h_{4,4} \\{- h_{4,3}^{*}} \\{- h_{4,4}}\end{bmatrix}}} = {{2\left( {{h_{3,3}}^{2} + {h_{3,4}}^{2} + {h_{4,3}}^{2} + {h_{4,4}}^{2}} \right)S_{3}} + {n_{3}^{\prime}{{for}\mspace{14mu} S_{4}}}}},{{{\begin{bmatrix}r_{3,1} & r_{3,2}^{*} & r_{3,5} & r_{3,6}^{*}\end{bmatrix}\begin{bmatrix}h_{3,4}^{*} \\{- h_{3,3}} \\{- h_{3,4}^{*}} \\h_{3,3}\end{bmatrix}} + {\begin{bmatrix}r_{4,1} & r_{4,2}^{*} & r_{4,5} & r_{4,6}^{*}\end{bmatrix}\begin{bmatrix}h_{4,4}^{*} \\{- h_{4,3}} \\{- h_{4,4}^{*}} \\h_{4,3}\end{bmatrix}}} = {{2\left( {{h_{3,3}}^{2} + {h_{3,4}}^{2} + {h_{4,3}}^{2} + {h_{4,4}}^{2}} \right)S_{4}} + {n_{4}^{\prime}{{for}\mspace{14mu} S_{5}}}}},{{{\begin{bmatrix}r_{1,3} & r_{1,4}^{*} & r_{1,7} & r_{1,8}^{*}\end{bmatrix}\begin{bmatrix}h_{1,1}^{*} \\h_{1,3} \\h_{1,1}^{*} \\h_{1,3}\end{bmatrix}} + {\begin{bmatrix}r_{3,3} & r_{3,4}^{*} & r_{3,7} & r_{3,8}^{*}\end{bmatrix}\begin{bmatrix}h_{3,1}^{*} \\h_{3,3} \\h_{3,1}^{*} \\h_{3,3}\end{bmatrix}}} = {{2\left( {{h_{1,1}}^{2} + {h_{1,3}}^{2} + {h_{3,1}}^{2} + {h_{3,3}}^{2}} \right)S_{5}} + {n_{5}^{\prime}{{for}\mspace{14mu} S_{6}}}}},{{{\begin{bmatrix}r_{1,3} & r_{1,4}^{*} & r_{1,7} & r_{1,8}^{*}\end{bmatrix}\begin{bmatrix}h_{1,3}^{*} \\{- h_{1,1}} \\h_{1,3}^{*} \\{- h_{1,1}}\end{bmatrix}} + {\begin{bmatrix}r_{3,3} & r_{3,4}^{*} & r_{3,7} & r_{3,8}^{*}\end{bmatrix}\begin{bmatrix}h_{3,3}^{*} \\{- h_{3,1}} \\h_{3,3}^{*} \\{- h_{3,1}}\end{bmatrix}}} = {{2\left( {{h_{1,1}}^{2} + {h_{1,3}}^{2} + {h_{3,1}}^{2} + {h_{3,3}}^{2}} \right)S_{6}} + {n_{6}^{\prime}{{for}\mspace{14mu} S_{7}}}}},{{{\begin{bmatrix}r_{2,3} & r_{2,4}^{*} & r_{2,7} & r_{2,8}^{*}\end{bmatrix}\begin{bmatrix}h_{2,2}^{*} \\h_{2,4} \\{- h_{2,2}^{*}} \\{- h_{2,4}}\end{bmatrix}} + {\begin{bmatrix}r_{4,3} & r_{4,4}^{*} & r_{4,7} & r_{4,8}^{*}\end{bmatrix}\begin{bmatrix}h_{4,2}^{*} \\h_{4,4} \\{- h_{4,2}^{*}} \\{- h_{4,4}}\end{bmatrix}}} = {{2\left( {{h_{2,2}}^{2} + {h_{2,4}}^{2} + {h_{4,2}}^{2} + {h_{4,4}}^{2}} \right)S_{7}} + {n_{7}^{\prime}{for}\mspace{14mu} S_{8}}}},{{{\left\lbrack \begin{matrix}r_{2,3} & r_{2,4}^{*} & r_{2,7} & r_{2,8}^{*}\end{matrix} \right\rbrack\left\lbrack \begin{matrix}h_{2,4}^{*} \\{- h_{2,2}} \\{- h_{2,4}^{*}} \\h_{2,2}\end{matrix} \right\rbrack} + {{\left\lbrack \begin{matrix}r_{4,3} & r_{4,4}^{*} & r_{4,7} & r_{4,8}^{*}\end{matrix} \right\rbrack\left\lbrack \begin{matrix}h_{4,4}^{*} \\{- h_{4,2}} \\{- h_{4,4}^{*}} \\h_{4,2}\end{matrix} \right\rbrack} \cdot}} = {{2\left( {{h_{2,2}}^{2} + {h_{2,4}}^{2} + {h_{4,2}}^{2} + {h_{4,4}}^{2}} \right)S_{8}} + n_{8}^{\prime}}}$

It is to be understood that various other adaptations and modificationscan be made within the spirit and scope of the invention. Therefore, itis the object of the appended claims to cover all such variations andmodifications as come within the true spirit and scope of the invention.

1. A method for transmitting a block of symbols in a multiple-inputmultiple-output (MIMO) network including a transmitter having a set oftransmit antennas and a receiver having a set of receive antennas,comprising the steps of: coding, in the transmitter, a block of symbolswith a first code to generate a first block, wherein the first code is aforward-error correcting code and; transmitting the first block;receiving, in the receiver, the first block; decoding, after thereceiving, the first block, and if the decoding is incorrect performingthe step of: coding, in the transmitter, the block of symbols with thefirst code and then a second code different than the first code togenerate a second block; transmitting the second block; receiving, inthe receiver, the second block; and combining the first block and thesecond block to recover the block of symbols; wherein the second code isa self-interference cancellation code (SICC) based on Hadamard matricesand the second block is $\begin{bmatrix}S_{1} \\{- S_{2}}\end{bmatrix}\quad$ where subscripts indicate the transmit antennas, andS represents the symbols transmitted in a column order.
 2. The method ofclaim 1, wherein the transmitting and receiving uses spatialmultiplexing.
 3. The method of claim 1, wherein the receiver includes amaximum likelihood detector.
 4. The method of claim 1, wherein thereceiver uses a minimum mean square error and zero forcing.
 5. Themethod of claim 1, wherein the combining eliminates self-interference.6. The method of claim 1, wherein the Hadamard matrices for the receivedsecond block are ${r^{({1,2,\ldots})}\left\lbrack {\begin{matrix}1 & 1 & 1 & 1 \\1 & {- 1} & 1 & {- 1}\end{matrix}\ldots} \right\rbrack},$ where superscripts representinstances of receiving the second block, and2h _(1,1) S ₁ h _(1,1)*+2h _(2,1) S ₁ h _(2,1)*+2h _(1,1) S ₁ h_(1,1)*+2h _(2,1) S ₁ h _(2,1) *+ . . . +n ₁′=2(|h _(1,1)|² +|h _(2,1)|²+|h _(1,1)|² +|h _(2,1)|²+ . . . )·S ₁ +n ₁′2h _(1,2) S ₂ h _(1,2)*+2h _(2,2) S ₂ h _(2,2)*+2h _(1,2) S ₂ h_(1,2)*+2h _(2,2) S ₂ h _(2,2) *+ . . . +n ₂′=2(|h _(1,2)|² +|h _(2,2)|²+|h _(1,2)|² +|h _(2,2)|²+ . . . )·S ₂ +n ₂′ where subscripts i, jindicate the receive and transmit antennas respectively, S indicates thesymbols, h represents channel coefficients, and noise is expressed as${n_{1}^{\prime} = {{h_{1.1}^{*}n_{1.1}^{\prime}} + {h_{2.1}^{*}n_{2.1}^{\prime}} + \ldots}}\mspace{14mu},{n_{2}^{\prime} = {{h_{1.2}^{*}n_{1.2}^{\prime}} + {h_{2.2}^{*}n_{2.2}^{\prime}} + {\ldots\mspace{14mu}.}}},{\left\lbrack {\begin{matrix}n_{1,1}^{\prime} & n_{1,2}^{\prime} \\n_{2,1}^{\prime} & n_{2,2}^{\prime}\end{matrix}\ldots} \right\rbrack = {\left\lbrack {\begin{matrix}n_{1}^{(1)} & {+ n_{1}^{(2)}} & n_{1}^{(1)} & {- n_{1}^{(2)}} \\n_{2}^{(1)} & {+ n_{2}^{(2)}} & n_{2}^{(1)} & {- n_{2}^{(2)}}\end{matrix}\ldots} \right\rbrack.}}$